package encore.portal.container;

import java.io.IOException;
import java.io.OutputStream;
import java.io.PrintWriter;
import java.util.Locale;

import javax.portlet.CacheControl;
import javax.portlet.PortletURL;

public interface PortletMimeResponseContext {
	/**
	 * 获取缓存控制器
	 * 
	 * @return
	 */
	public CacheControl getCacheControl();

	public PortletURLProvider getPortletURLProvider();

	public Locale getLocale();

	public String getContentType();

	public void setContentType(String contentType);

	public String getCharacterEncoding();

	public OutputStream getOutputStream() throws IOException,
			IllegalArgumentException;

	public PrintWriter getWriter() throws IOException, IllegalArgumentException;

	public int getBufferSize();

	public void setBufferSize();

	public void rest();

	public void restBuffer();

	public void flushBuffer() throws IOException;

	public boolean isCommitted();

}
